<?xml version="1.0" encoding="UTF-8"?>
<!--

       Copyright 2006-2016 the original author or authors.

       Licensed under the Apache License, Version 2.0 (the "License");
       you may not use this file except in compliance with the License.
       You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

       Unless required by applicable law or agreed to in writing, software
       distributed under the License is distributed on an "AS IS" BASIS,
       WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       See the License for the specific language governing permissions and
       limitations under the License.

-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <title>The &lt;plugin&gt; Element</title>
  <link rel="stylesheet" type="text/css" href="../mbgstyle.css" />
</head>
<body>
<h1>The &lt;plugin&gt; Element</h1>
<p>The &lt;plugin&gt; element is used to define a plugin.  Plugins can be used
to extend or modify the code generated by MyBatis Generator (MBG).    This element is a child element of the
<a href="context.html">&lt;context&gt;</a> element.  Any number of
plugins may be specified in a context.  The plugins will be called in
the order that are listed in the configuration.</p>

<p>For more information about implementing plugins, see the
<a href="../reference/pluggingIn.html">Implementing Plugins</a> reference
page.</p>

<p>For more information about plugins supplied with MyBatis Generator, see the
<a href="../reference/plugins.html">Supplied Plugins</a> reference
page.</p>

<h2>Required Attributes</h2>
<table border="1" cellspacing="0" cellpadding="5">
  <tr>
    <th>Attribute</th>
    <th>Description</th>
  </tr>
  <tr>
    <td valign="top">type</td>
    <td>The fully qualified name of the class that implements the plugin.
        The class must implement the interface
        <code>org.mybatis.generator.api.Plugin</code>,
        and must have a public default constructor.  Note that it is far
        easier to extend the adapter class
        <code>org.mybatis.generator.api.PluginAdapter</code>
        than to implement the entire interface.</td>
  </tr>
</table>

<h2>Optional Attributes</h2>
<p>None</p>

<h2>Child Elements</h2>
<ul>
  <li><a href="property.html">&lt;property&gt;</a> (0 or 1)</li>
</ul>

</body>
</html>
